package com.zm.se.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 实体类基类
 * 把接下来要创建的实体类中的重复属性（数据表中的重复字段）写在这里然后之后的实体类中继承该类即可，实现代码复用
 * 如果以这类是专门给其他类来继承的，就将这个类设置为抽象的（就想这个类）
 */
public abstract class BaseEntity implements  Serializable{
    private static final long serialVersionUID = -4622249654541332158L;

    //创建人
    @ExcelIgnore//不输出
    String createdUser;
    //创建时间
    @ExcelIgnore//不输出
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    Date createdTime;
    //修改人
    @ExcelIgnore//不输出
    String modifiedUser;
    //最后修改时间
    @ExcelIgnore//不输出
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    Date modifiedTime;

    //get   set方法
    public String getCreatedUser() {
        return createdUser;
    }

    public void setCreatedUser(String createdUser) {
        this.createdUser = createdUser;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getModifiedUser() {
        return modifiedUser;
    }

    public void setModifiedUser(String modifiedUser) {
        this.modifiedUser = modifiedUser;
    }

    public Date getModifiedTime() {
        return modifiedTime;
    }

    public void setModifiedTime(Date modifiedTime) {
        this.modifiedTime = modifiedTime;
    }

    //toString()

    @Override
    public String toString() {
        return "BaseEntity{" +
                "createdUser='" + createdUser + '\'' +
                ", createdTime=" + createdTime +
                ", modifiedUser='" + modifiedUser + '\'' +
                ", modifiedTime=" + modifiedTime +
                '}';
    }
}
